// tslint:disable-next-line:file-name-casing
import { SubscriptionAPI } from 'dva';
import { RouteComponentProps } from 'dva/router';
import { IGlobal } from '../../../Model/GlobalModel';

export interface IState {
  filter: {
    pageNum: number;
    pageSize: number;
    pushCycleId: number;
  };
  data: IListResult;
}
export interface INotify {
  id: number;
  title: string;
  sysMsgType: number;
  treatmentTime: string;
  sendTime: string;
  status: boolean;
  nextFollowUpDays: string;
}
export interface IListResult {
  records?: INotify[];
  current?: number;
  pages?: number;
  size?: number;
  total?: number;
}

export interface IDeleteState {
  isDeleting: boolean;
  deleteArr: number[];
}
export interface IProps
  extends SubscriptionAPI,
    RouteComponentProps<{
      periodId: string;
      groupId: string;
    }> {
  global: IGlobal;
}
export interface IMessageType {
  [key: number]: ITypeItem;
}

export interface ITypeItem {
  name: string;
  class: string;
  type: string;
}
